Semi-Formal Functional Software Modeling with TMK
نویسنده
چکیده
The Task-Method-Knowledge (TMK) modeling language is a formal mechanism for describing a software system. It was created as a knowledge representation framework for intelligent systems. The main idea behind TMK is that effective reasoning about a system is supported by a description of both what a system does and how it works. TMK models are referred to as functional models because they focus on describing and decomposing the functions of systems. Because TMK models were designed for use in artificial intelligent systems, existing versions of the TMK language require the enormous precision and formality necessary to support automatic processing. However, the basic idea behind TMK, that functional models of systems are useful for reasoning about those systems, also seems appropriate for information to be used by humans. This paper presents a new version of TMK which is less formal than the existing versions of the language. This semi-formal version of TMK is intended to be used as a software architecture modeling language for use by human software engineers.
منابع مشابه
Developing Reliable yet Flexible Software through If-Then Model Transformation Rules
Developing reliable yet flexible software is a hard problem. Although modeling methods enjoy a lot of advantages, the exclusive use of just one of them, in many cases, may not guarantee the development of reliable and flexible software. Formal modeling methods ensure reliability because they use a rigorous approach to software development. However, lack of knowledge and high cost practically fo...
متن کاملProlegomena to a Task-Method-Knowledge Theory of Cognition
How can we integrate interrelated theories of individual elements of cognition? Computational models of reasoning processes encode an understanding of reasoning. Consequently, a computational modeling language may be ideally suited to the presentation of theories of cognition. By representing theories of a variety of phenomena in a single modeling language, we can potentially explore how these ...
متن کاملJFly: A JML-Based Strategy for Incorporating Formal Specifications into the Software Development Process
This paper presents JFly, a JML-based strategy for incorporating formal specifications into the software development of object oriented programs. The strategy consists in evolving functional requirements into a semi-formal requirements form, and then expressing these requirements as JML formal specifications. What makes our strategy different from existing strategies is the particular use of JM...
متن کاملEmpirical Evaluation of Modeling Languages Using Multi-Lift System Case Study
This paper empirically investigates the advantages and limitations of modeling languages by specifying the multi-lift system as a non-trivial case study. The multi-lift system is a suitable test bed to demonstrate the expressive power of modeling languages in specifying such a concurrent, reactive, and complex system. English, UML, and Object-Z have been chosen, respectively, as informal, semi-...
متن کاملDeveloping Reliable yet Flexible Software through If-then Model Transformation Rules
Developing reliable yet flexible software is a hard problem. Although modeling methods enjoy a lot of advantages, the exclusive use of just one of them, in many cases, may not guarantee the development of reliable and flexible software. Formal modeling methods ensure reliability because they use a rigorous approach to software development. However, lack of knowledge and high cost practically fo...
متن کامل